package com.usian.admin.feign;

import com.usian.model.admin.dtos.NewsAuthDto;
import com.usian.model.common.dtos.ResponseResult;
import com.usian.model.media.pojos.WmNews;
import com.usian.model.media.pojos.WmUser;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

@FeignClient("leadnews-wemedia")
public interface WemediaFeign {

    // 1 根据文章id查询自媒体文章的数据
    @GetMapping("api/v1/news/findNewsById/{id}")
    WmNews findNewsById(@PathVariable Integer id);
    // 2 在审核的过程中,审核失败或者成功需要修改自媒体文章的状态
    @PostMapping("api/v1/news/updateNewsStatus")
    ResponseResult updateNewsStatus(@RequestBody WmNews wmNews);
    // 3 在文章进行保存的时候需要查询作者信息，需要通过自媒体用户关联查询作者信息
    @GetMapping("/api/v1/wmuser/findUserById/{id}")
    WmUser findUserById(@PathVariable Integer id);

    @GetMapping("api/v1/news/findRelease")
    public List<WmNews> findRelease();

    @PostMapping("api/v1/news/findList")
    ResponseResult findList(@RequestBody NewsAuthDto newsAuthDto);

    @GetMapping("api/v1/news/findOne/{id}")
    ResponseResult findOne(@PathVariable Integer id);
}
